/**
  ******************************************************************************
  * @file    sym32l010_hal_irmod.c
  * @author  AE Team
  * @version 1.0.3
  * @date    2024-05-28
  * @brief   IRMOD HAL module driver.
  *
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; Copyright (c) 2024 SIYIMicro.
  * All rights reserved.</center></h2>
  *
  *
  ******************************************************************************
  */


/******************************************************************************/
/* Include files                                                              */
/******************************************************************************/
#include "sym32l010_hal_irmod.h"


/*******************************************************************************
  * @brief  配置红外调制方式
  * @param  ModulateMod : 红外调制方式
                          @ref IRMOD_GTIM1CH1_AND_ATIMCH1_AND_IRSW
                          @ref IRMOD_GTIM1CH1_AND_ATIMCH2_AND_IRSW
                          @ref IRMOD_GTIM1CH2_AND_ATIMCH1_AND_IRSW
                          @ref IRMOD_GTIM1CH2_AND_ATIMCH2_AND_IRSW
                          @ref IRMOD_UART1TXD_AND_GTIM1CH1_AND_IRSW
                          @ref IRMOD_UART1TXD_AND_GTIM1CH2_AND_IRSW
                          @ref IRMOD_UART2TXD_AND_ATIMCH1_AND_IRSW
                          @ref IRMOD_UART2TXD_AND_ATIMCH2_AND_IRSW
                          @ref IRMOD_GTIM1CH1_OR_ATIMCH1_OR_IRSW
                          @ref IRMOD_GTIM1CH1_OR_ATIMCH2_OR_IRSW
                          @ref IRMOD_GTIM1CH2_OR_ATIMCH1_OR_IRSW
                          @ref IRMOD_GTIM1CH2_OR_ATIMCH2_OR_IRSW
                          @ref IRMOD_UART1TXD_OR_GTIM1CH1_OR_IRSW
                          @ref IRMOD_UART1TXD_OR_GTIM1CH2_OR_IRSW
                          @ref IRMOD_UART2TXD_OR_ATIMCH1_OR_IRSW
                          @ref IRMOD_UART2TXD_OR_ATIMCH2_OR_IRSW
  * @param  Polarity    : 红外输出极性
  * @retval None
  */
void HAL_IRMOD_Config(IRMOD_ModulateModTypeDef ModulateMod, IRMOD_PolarityTypeDef Polarity)
{
    SYM_IRMOD->CR = ModulateMod;
    REGBITS_MODIFY(SYM_IRMOD->CR,
                   IRMOD_CR_POLARITY_Msk | IRMOD_CR_MOD_Msk,
                   (uint32_t)ModulateMod | (uint32_t)Polarity);
}


/*******************************************************************************
  * @brief  设置红外调制软件控制为高
  * @param  None
  * @retval None
  */
void HAL_IRMOD_IRSW_SetHigh(void)
{
    HAL_IRMOD_IRSW_SETHIGH();
}


/*******************************************************************************
  * @brief  设置红外调制软件控制为低
  * @param  None
  * @retval None
  */
void HAL_IRMOD_IRSW_SetLow(void)
{
    HAL_IRMOD_IRSW_SETLOW();
}


/************************ (C) COPYRIGHT SIYIMicro *****END OF FILE*************/
